Intelligent distributed server system and method for operating the same

ABSTRACT

An intelligent distributed server system and a method of operating the same are provided. Since processing areas of a game server can be changed in real time during a game service, slow response time or service failure due to load unbalancing between game servers can be removed and thus stability is improved. Since game components are divided into several servers, there are difficulties in developing the game. Thus, new distributed processing technique is developed and applied. Simple configuration, server performance improvement, and service stability of relatively difficult distributed game server can be achieved, and also one-step advanced game plan can be realized by applying distributed processing technique to form a seamless and massive game space.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an on-line game server techniquesupporting large-scale users, and more particularly, to a flexible andintelligent distributed server system capable of effectivelydistributing large-scale users and a method for operating the same.

2. Description of the Related Art

Online games refer to video games that network-connected users recognizeand interact with each other in a virtual space provided from a server.The online game provides game environment as a function, and includes agame server that processes an actual game contents in a background and aclient that provides a user interface. Since the online game server isrequired to process a plurality of clients, stability and processingperformance are very important. Additionally, the value of the onlinegame server depends on how to overcome a game environment withsimultaneous processes of the clients and contents limitation. On theother hand, since online game clients directly provide interfaces to theusers, game elements such as graphics, sound, convenience, operability,etc. are very important.

Until now, online game servers have obtained stability usingconventional developing procedures, and have not attempted new technicalmethods. The conventional methods deal with a tremendous increase ofusers by processing game users in an independent group unit through aplurality of channels and a division of a server group, and do not dealwith users technically. Additionally, when users are concentrated on aspecific group, the server reaches the processing limit and the servicefailure occurs. To deal with this situation, a maximum allowance forusers to each group needs to be set or an artificial user distributionmethod needs to be utilized. However, game server settings with thiskind of solutions provide temporary actions about problematic situationwith a limited rule of a conventional method rather than a fundamentalsolution for the problematic situation using development and applicationof new techniques.

Breaking from the conventional and limited game server setting, seamlessprocessing techniques are under development to seamlessly provide adistributed process in a massive game space. These techniques allowlarge-scale users to play games in an unrestricted and identical space,and the number of users allowed for one space increases drastically whencompared with a conventional method. Stability deterioration of thesystem needs to be overcome, which is caused by the processingcomplexity of a seamless game space, the complexity increase of a gameserver system establishment, and the partial space concentration ofusers.

Since the online game server plays an important role in performing thegame, reliability is highly required. In an aspect of providing arealistic game environment, the online game server needs to be ahigh-performance application providing a fast process and response abouta user request. Additionally, in an aspect of processing unlimitedlarge-scale users simultaneously, expandability with high flexibilityand efficiency is required.

However, due to the difficulty of providing a realistic gameenvironment, the conventional online game server utilizes a methoddividing a game world into fixed area and processing the result. At thispoint, when adjacent users are connected to a different server,interplay is almost impossible. Although these game servers areintuitive and simple, stability and response time of the gamedrastically decrease when users are concentrated in a partial area.Therefore, expandability and efficiency deteriorates because more thanthe predetermined number of users cannot be processed.

SUMMARY OF THE INVENTION

Accordingly, the present invention is directed to an intelligentdistributed server system and a method for operating the same, whichsubstantially obviates one or more problems due to limitations anddisadvantages of the related art.

It is an object of the present invention to provide an intelligentdistributed server system providing a smooth interaction between usersand objects, which are distributed and processed, through a smooth anddistributed process of a large-scale game space and a message deliverybetween servers, which are processed asynchronously, and a method foroperating the same. Moreover, the intelligent distributed server systemobtains high expandability, high performance, and stability by using adynamic load balancing technique that optimizes the server according toa situation during a game service, and also an interaction techniquebetween servers is applied thereto. Thus, a game realism can be improvedin viewpoints of users.

The technical objects of the present invention may be largely dividedinto several categories.

First, an online game server system of FIG. 1 is constituted, which canbe adjusted in real time when executing a processing area of a server.The game server includes six parts such as a world server 1, a loginserver 2, zone servers 3, gateway servers 4, users 5, and a database 6.In game server components, components can be easily added, and thenumber of components to be added is not limited actually except for theworld server 1. Additionally, when an independently existing worldserver is added, a proposed system is separately constituted and thenadded to the world server. Thus, there is no limitation to add the worldserver 1. The game server system configuration of FIG. 1 can begenerally applied to the online game based on a virtual space, andlarge-scale users can be easily processed because of this kind ofexpandability.

Second, flexibility, stability, and processing performance of the gameserver are improved using characteristics of the gateway server 4, whichis the component of the game server system. Referring to the game serversystem configuration in FIG. 1, the gateway server 4 is located betweenthe login server 2, which performs logins of users and actual gamesprocess, and the zone server 3. In theses characteristics of the gatewayserver 4, a user request is flexible to deliver the request to anappropriate server depending on a situation. Additionally, wheninformation is delivered to users, the gateway server 4 is responsiblefor processing a network. Thus, distribution of functional componentsand improvement of processing speed are improved in the game server.Moreover, through the flexible process, when the server to which a useris connected is changed, inefficient and complex problems ofreconnection and reauthentication can be reduced. Additionally, networksecurity of the game servers can be enhanced by separating an outernetwork between a user and the gateway server 4 from an inner serverbetween the game servers.

Third, an effective space division policy is suggested with reference toan area of interest of users in the online game of large-scale users. Anobject of the online game conventionally has its own original view, andeach object manages information of other objects existing in its ownview. The area of interest is formed with reference to its own view, andinteractions between objects develop with other objects of the area ofinterest. Using theses situations, virtual space is equally divided by aradius of the area of interest, and the area of interest of a user canbe four to nine division units. Especially, the applied divisiontechnique processes information, which will be shared between adjacentzone servers, and does not include adjacent division units, and improvesefficiency when the present invention is realized.

Fourth, a zone server management technique in a world server 1processing a massive-virtual space, a reasonable principle aboutprocessing area allocation, and an easy embodiment technique aresuggested. The online game characteristics include frequent interactionsbetween adjacent objects, and burden of interactions generated in aboundary area between other zone servers is very influential.Considering theses situation, an optimized boundary division techniqueis developed and applied, which maintains boundary between the zoneservers as a straight line. Additionally, since the zone servermanagement technique is applied to the world server through a quadtreechange, the most effective management technique is suggested, whichmeets the optimized boundary division requirements. By applying thesesessential elements, an effective management, an easy processing areaallocation, and harmony can be obtained with respect to the zone server3 processing the massive-virtual space.

Fifth, although belonging to a different zone server, seamless world isconstituted by applying a distributed processing technique, which iscapable of processing mutual recognitions and interactions between theadjacent distributed areas in a virtual space. The online gamecharacteristics include a large burden in interactions between adjacentobjects. When these objects exist in a different zone server, the burdenof an embodiment and a process increases. Thus, interactions of theobjects in the different zone server can not be supported, and the worldexists in fragments and appears to be unnatural according to aprocessing unit. Unlike the conventional invention, the presentinvention provides an interaction between the zone servers 3 but onlyadjacent zone server areas by considering interactions of the onlinegame mostly generated between adjacent objects. Through theses methods,the online game server can be constituted on the basis of the seamlessworld and also developed, which can recognize and influence charactersin adjacent area and thus is realistic and immersive.

Sixth, a dynamic load balancing technique that equalizes load is appliedby adjusting processing area in real time with respect to a loadunbalance between zone servers, which is generated during a gameservice. Therefore, stability and efficiency of the game are enhanced,and also availability of a game server system is improved. During theonline game executed in the massive space, situations in which users areconcentrated on a certain area occur frequently according tocircumstances. Due to these situations, a part of the server systemsexceeds the load of their processing capability. Consequently, a lagphenomenon is generated because of a response time delay of the gameserver, and then service failure occurs. To remove threateningcomponents, the online game server system is developed, which is capableof adjusting the processing area in real time, and a dynamic loadbalancing technique is applied. The present invention improves thestability of the game service by preventing problematic situation inadvance. Therefore, the utilization improvement of the game serversystem and the efficiency of the game server increase by pursuing anequal utilization of the game server system.

It is to be understood that both the foregoing general description andthe following detailed description of the present invention areexemplary and explanatory and are intended to provide furtherexplanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a furtherunderstanding of the invention, are incorporated in and constitute apart of this application, illustrate embodiments of the invention andtogether with the description serve to explain the principle of theinvention. In the drawings:

FIG. 1 is a block diagram of a distributed game server;

FIG. 2 illustrates a conceptual view of a game area division;

FIG. 3 is an example of an optimized boundary division between servers;

FIG. 4 is a conceptual view of a server management;

FIG. 5 illustrates an actual embodiment of a game area division process;

FIG. 6 is a conceptual view of a method of processing a boundary areabetween servers;

FIG. 7 is a conceptual view of executing a dynamic load balancingmethod;

FIG. 8 is an example of embodying a dynamic load balancing method; and

FIG. 9 illustrates a result of a dynamic load balancing simulation.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the preferred embodiments of thepresent invention, examples of which are illustrated in the accompanyingdrawings.

An intelligent distributed server system includes a world server, alogin server, a zone server and a gateway server. The world serverestimates entire information of a game world of a massive virtual spaceto allocate processing areas of the following zone servers, and processmutual recognitions and interactions between the adjacent zone servers.The login server processes an authentication request of a user. The zoneserver processes a corresponding world that is allocated by the worldserver, and a user request in the zone server itself, and managesadjacent information of other zone servers adjacent to the zone serveritself. The gateway server is located between the login server and thezone server, which perform user-related processes and game processes todeliver a user request to a corresponding zone server and performnetwork processes when information is delivered to a plurality of users.

On the other hand, a method of operating an intelligent distributedserver system includes dividing a game world into equal cells of anx-axis and a y-axis within a radius of an area of interest, which isformed with reference to its own view in the world server, with respectto an object with its own original view in the game world of a massivevirtual space, allocating the divided cells to zone servers, andadjusting a processing area of the zone server through mutualrecognitions and interactions between the allocated zone servers.

Hereinafter, an intelligent distributed server system and a method ofoperating the same will be described in more detail with reference todrawings.

FIG. 1 is a block diagram of a distributed game server.

Referring to FIG. 1, the intelligent distributed server system includesworld server 1, login server 2, zone server 3, a gateway server 4, aclient 5 (hereinafter, referred to as a user), and a database 6. Throughthis configuration, characteristics and functions are determinedaccording to relationship of the position, and a flexible and efficientnetwork configuration of the online game server system is shown, whichis capable of adjusting a processing area of the server duringexecution.

The world server 1 manages and relays the connection of a plurality oflogin servers 2 and zone servers 3 through a network relationship andobserves entire world information to allocate tuning, manageinstructions, and processing area of the zone servers 3, which aresuitable to the situation.

The login server 2 authenticates users 5 and processes requests beforean initial user 5 participates in the zone server 3.

The zone server 3 processes a part of the game world that is allocatedby the world server 1. At this point, the zone server 3 mainly processesrequests of users 5 in itself and manages adjacent information of otherzone servers 3, which are adjacent to the zone server 3 itself

The gateway server 4 relays network communication between the loginserver 2 and the zone server 3, which process users 5 and game accordingto the position in the network, and is responsible for a flexible relayof requests of users 5 and delivery information according to status ofusers 5 and entire situation. Additionally, the world server 1 and thelogin server 2, and the zone server 3 can be mainly responsible forbroadcasting that delivers information to users 5, and effectivelyfunctions to prevent network reconnection and reauthentication of userswhen the server to which users 5 belong is changed. Additionally, thegateway server 4 is mainly responsible for network processes of users 5to allow the zone server 3 to process more areas, and also divides thenetwork into an inner network between servers such as the world server1, the login server 2, the zone server 3, and the gate server 4 and anouter network between the gateway server 4 and users 5.

The users 5 can be called as players participating the online game oruser-manipulating game components. The number of the users 5 isproportional to that of game players, and also can be thousands to tensof thousands according to game properties.

The database 6 is called as a generally-used database management systemor application with similar functions, and also connected to worldserver 1, the login server 2, and the zone server 3 using network exceptfor the gateway server 4 connected to the outer network.

A method of operating the intelligent distributed server system with theabove configuration will be described with reference to FIGS. 2 to 9.

FIG. 2 illustrates a conceptual view of a game area division.

Referring to FIG. 2, a space division policy with reference to the areaof interest of users is illustrated in the online game of large-scaleusers executing in the massive virtual space. Instantly necessaryinformation is defined with reference to an original view of the onlinegame object, and area defined by the view of the object is called thearea of interest. By considering that general interactions in the gameare generated in response to other objects of the area of interest, thevirtual space of the game can be divided with respect to management andprocesses. With reference to a radius of an area of interest of a user,which is a request subject of the game, space is reconstituted with agroup of cells, which is plurality of division units when the space isdivided constantly according to the x-axis and the y-axis. Through thesemethods, the area of interest of users in the divided space is definedwith four to nine cells according to the position, and processes ofusers activity are performed by only searching the cells in the area ofinterest. Thus, the process efficiency becomes higher than before.Moreover, since these cells are located adjacent to the cells that theuser is in or belongs to, share and process information is limited toadjacent cells between the zone servers to constitute the seamlessworld. Thus, efficiency and convenience can be provided in an embodimentof the game.

FIG. 3 is an example of an optimized boundary division between servers.FIG. 4 is a conceptual view of a server management. FIG. 5 illustratesan actual embodiment of a game area division process.

Referring to FIGS. 3 to 5, a zone management technique, principle and anembodiment technique about processing area, and actual applicationexamples of the world server, which processes a massive virtual space,are illustrated. The online game has frequent interactions betweenadjacent objects and the processing burden of an online process ishigher than that of an offline process when the interactions betweenobjects are processed through network communication. Considering thispoint, burden of interactions between objects located in a boundary ofother zone servers is heavier than that in the same zone server. Thus,performance improvement of entire game server is achieved by minimizingobject interactions between other zone servers. Additionally, userdistribution of the online game is frequently concentrated on a specificarea, and a strategy is required to minimize a boundary area betweenzone servers when considering the difficulty in predicting andcontrolling the distribution. Accordingly, as illustrated in FIG. 3, anoptimized boundary division technique is applied by maintaining theboundary of the zone server as a straight line. Moreover, since theoptimized boundary division can be divided into maximum four at once, areparative division is possible and a quadtree of transformed method isused for division area and management of zone servers as illustrated inFIG. 4. An actual embodiment example divides virtual space on the basisof the principle and the embodiment technique in FIG. 5.

FIG. 6 is a conceptual view of a method of processing a boundary areabetween servers.

Referring to FIG. 6, an embodiment method of a seamless world embodimenttechnique allowing the mutual recognitions and interactions to bepossible is illustrated when objects in a different zone server areadjacent to each other. A brief information unit related to objects isdefined as proxy to recognize and influence objects in a differentserver. The proxy is made of partially additional information necessaryfor external form information of the objects and a distributed process,and the proxy is directly used for reference about object information ina different zone server. Additionally, activities and processes thatinfluence a data change are delivered to and processed in the zoneserver where the proxy exists. A proxy router responsible for deliveryof a request is realized in the world server, and a proxy actormaintaining proxy information and responsible for related requestdelivery and process at the same time is realized in the zone server.

FIG. 7 is a conceptual view of executing a dynamic load balancingmethod. FIG. 8 is an example of embodying a dynamic load balancingmethod. FIG. 9 illustrates a result of a dynamic load balancingsimulation.

Referring to FIGS. 7 to 9, description and actual application example ofa dynamic load balancing technique that equalizing the load by adjustinga processing area in real time with respect to load unbalancing betweenzone servers, which is generated during the game service, areillustrated. First, FIG. 7 illustrates a recursive executing order of adynamic load balancing with respect to the game world managed in atransformed quadtree as illustrated in FIG. 4. After load balancing offirst four divisions, a dynamic load balancing is applied in an order ofreparative load balancing with respect to each division area and thus anexecution time becomes extremely short. FIG. 8 illustrates a specificexample on how these dynamic load balancing are sequentially processed.Here, since a change of a zone server-processing area is directly aserver move of related user, it is unnecessary to calculate an optimizedboundary division at the same time. Accordingly, the load balancing isperformed at a point of the minimum load by estimating load values of adivision reference point in current area and when one increases or onedecreases in an x-axis, and one increases or one decreases in a y-axisfrom the reference point. When the reference point is determined to beoptimal, load balancing is performed at minimum load point by estimatingload values of when Δx and Δy are one increase and one decrease,respectively. At this point, a dynamic load balancing preventsinefficient execution due to the small load difference by setting aminimum critical value.

As described the above, when an intelligent distributed server systemand a method of operating the same are used in an actual online gamedevelopment, expandability of an online game server and an intelligentmanagement capability according to a situation can be obtained, andstability of a game server and performance improvement can be achievedsimultaneously. Moreover, the online game supporting a seamless worldcan be developed by applying distributed processing technique andmanagement and process technique for massive game space.

It will be apparent to those skilled in the art that variousmodifications and variations can be made in the present invention. Thus,it is intended that the present invention covers the modifications andvariations of this invention provided they come within the scope of theappended claims and their equivalents.

1. An intelligent distributed server system comprising: a world serverestimating entire information of a game world of a massive virtual spaceto allocate processing areas of the following zone servers, and processmutual recognitions and interactions between the adjacent zone servers;a login server processing an authentication request of a user; the zoneserver processing a corresponding world that is allocated by the worldserver and a user request in the zone server itself, and managingadjacent information of other zone servers adjacent to the zone serveritself; and a gateway server located between the login server and thezone server, which perform user-related processes and game processes, todeliver a user request to a corresponding zone server and performnetwork processes when information is delivered to a plurality of users.2. The intelligent distributed server system of claim 1, furthercomprising a database management system or an application with adatabase management function connected to the world server, the loginserver, and the zone server through a network.
 3. A method for operatingan intelligent distributed server system, the method comprising thesteps of dividing a game world into equal cells of an x-axis and ay-axis within a radius of an area of interest, which is formed withreference to its own view in the world server, with respect to an objectwith its own original view in the game world of a massive virtual space;allocating the divided cells to zone servers; and adjusting a processingarea of the zone server through mutual recognitions and interactionsbetween the allocated zone servers.
 4. The method of claim 3, whereininteractions between objects are processed in cells adjacent to the areaof interest during the dividing of the game world.
 5. The method ofclaim 4, wherein processes corresponding to a user are processed onlywith respect to four to nine cells of the area of interest.
 6. Themethod of claim 3, wherein a boundary between the zone servers dividedduring the allocating of the processing area is maintained as a straightline, and interactions between the adjacent zone servers are processed.7. The method of claim 6, wherein interactions between the zone serversare supported but only between cells of a boundary divided from adjacentzone server area.
 8. The method of claim 6 or 7, wherein the cells ofthe boundary includes an external information of the objects for mutualrecognitions and interactions with respect to objects in a differentzone server, and additional information for distributed process; proxydirectly using reference about object information in the different zoneserver is provided; a proxy router responsible for deliverycorresponding to a request is realized in the world server; and a proxyactor maintaining proxy information and responsible for a relatedrequest delivery and process at the same time is realized in the zoneserver.
 9. The method of claim 3, wherein when load is concentrated on aspecific zone server during the adjusting of the processing area,dynamic load balancing is performed, in which the game world is dividedinto four worlds, load balancing is performed on the four dividedworlds, and the load balancing is recursively performed on each dividedworld, and thus the load is equalized by adjusting processing areas inreal time with respect to load unbalancing between zone servers.
 10. Themethod of claim 9, wherein load balancing is performed at a point of theminimum load by determining a change of load values of a divisionreference point in current area, and ±1 in an x-axis and ±1 in a y-axisfrom the reference point.